32 research outputs found
Understanding bidirectional transformations with TGGs and JTL
In Model-Driven Engineering bidirectional model transformations emerged as an important ingredient to cope with scenarios such as change propagation, synchronization and to keep consistent system views whenever changes occurring on some view have to be propagated over the others. However, bidirectional mappings open a number of intricate issues that have been only partially solved by research.This paper identifies a set of features characterizing bidirectional transformations and validates them against two existing approaches. In particular, a scenario based on the UML2RDBMS transformation and consisting of two different configurations is implemented by means of two different approaches, such as Triple Graph Grammars and the Janus Transformation Language, for understanding bidirectional transformations with respect to the elicited features
From software architecture to analysis models and back: Model-driven refactoring aimed at availability improvement
Abstract Context With the ever-increasing evolution of software systems, their architecture is subject to frequent changes due to multiple reasons, such as new requirements. Appropriate architectural changes driven by non-functional requirements are particularly challenging to identify because they concern quantitative analyses that are usually carried out with specific languages and tools. A considerable number of approaches have been proposed in the last decades to derive non-functional analysis models from architectural ones. However, there is an evident lack of automation in the backward path that brings the analysis results back to the software architecture. Objective In this paper, we propose a model-driven approach to support designers in improving the availability of their software systems through refactoring actions. Method The proposed framework makes use of bidirectional model transformations to map UML models onto Generalized Stochastic Petri Nets (GSPN) analysis models and vice versa. In particular, after availability analysis, our approach enables the application of model refactoring, possibly based on well-known fault tolerance patterns, aimed at improving the availability of the architectural model. Results We validated the effectiveness of our approach on an Environmental Control System. Our results show that the approach can generate: (i) an analyzable availability model from a software architecture description, and (ii) valid software architecture models back from availability models. Finally, our results highlight that the application of fault tolerance patterns significantly improves the availability in each considered scenario. Conclusion The approach integrates bidirectional model transformation and fault tolerance techniques to support the availability-driven refactoring of architectural models. The results of our experiment showed the effectiveness of the approach in improving the software availability of the system
Approaching Collaborative Modeling as an Uncertainty Reduction Process
ABSTRACT Model-Driven Engineering (MDE) technologies aim to support the growing complexity of software systems. Models are increasingly becoming large and unmanageable, and hence difficult to be understood by humans and processed by machines. As a consequence, multi-user environments are necessary to enable designers to create and refine large models in a collaborative manner enabling the engineering, modularization and reuse. In this paper, we propose a model-driven approach to represent, manage and manipulate models edited in a collaborative manner. In particular, we propose to represent the solutions space (i.e, model versions) in an intensional manner by adopting a model with uncertainty. We define a plan to manage the uncertainty by selecting the desired design, to manipulate their collaborative models in manually or automatic way, and to exploit a collaborative environment for real time multi-user editing. The approach is showed by means of a motivating example that involves business models demonstrating the advantages of the proposed approach
Approaching the Model-Driven Generation of Feedback to Remove Software Performance Flaws
Abstract—The problem of interpreting results of perfor-mance analysis and providing feedback on software models to overcome performance flaws is probably the most critical open issue in the field of software performance engineering. Automation in this step would help to introduce perfor-mance validation as an integrated activity in the software lifecycle, without dramatically affecting the daily practices of software developers. In this paper we approach the problem with model-driven techniques, on which we build a general solution. Basing on the concept of performance antipatterns, that are bad practices in software modeling leading to performance flaws, we introduce metamodels and transformations that can support the whole process of flaw detection and solution. The approach that we propose is notation-independent and can be embedded in any (existing or future) concrete modeling notation by using weaving models and automatically generated model transformations. Finally, we discuss the issues opened from this work and the future achievements that are at the hand in this domain thanks to model-driven techniques
Architectural Support for Software Performance in Continuous Software Engineering: A Systematic Mapping Study
The continuous software engineering paradigm is gaining popularity in modern
development practices, where the interleaving of design and runtime activities
is induced by the continuous evolution of software systems. In this context,
performance assessment is not easy, but recent studies have shown that
architectural models evolving with the software can support this goal. In this
paper, we present a mapping study aimed at classifying existing scientific
contributions that deal with the architectural support for performance-targeted
continuous software engineering. We have applied the systematic mapping
methodology to an initial set of 215 potentially relevant papers and selected
66 primary studies that we have analyzed to characterize and classify the
current state of research. This classification helps to focus on the main
aspects that are being considered in this domain and, mostly, on the emerging
findings and implications for future researc
Automatic Deployment Space Exploration Using Refinement Transformations
To manage the complex engineering information for real-time systems, the system under development may be modelled in a high-level architecture de- scription language. This high-level information provides a basis for deployment space exploration as it can be used to generate a low-level implementation. During this deployment mapping many platform-dependent choices have to be made whose consequences cannot be easily predicted. In this paper we present an approach to the automatic exploration of the deployment space based on platform-based design. All possible solutions of a deployment step are generated using a refinement trans- formation. Non-conforming deployment alternatives are pruned as early as possible using simulation or analytical methods. We validate the feasibility of our approach by deploying part of an automotive power window optimized for its real-time be- haviour using an AUTOSAR-like representation. First results are promising and show that the optimal solution can indeed be found efficiently with our approach
Tool-Support of Socio-Technical Coordination in the Context of Heterogeneous Modeling: A Research Statement and Associated Roadmap
International audienceThe growing complexity of everyday life systems (and devices) over the last decades has forced the industry to use and investigate different development techniques to manage the many different aspects of the systems. In this context, the use of model-driven engineering (MDE) has emerged and is now common practice for many engineering disciplines. However, this comes with important challenges. As a set of main challenges relates to the fact that different modeling techniques, languages, and tools are required to deal with the different system aspects, and that support is required to ensure consistency and coherence between the different models. This paper identifies a number of challenges and paints a roadmap on how tooling can support a multi-model integrated way of working
MoVES: A Model-Driven Methodology for Vehicular Embedded Systems
This paper introduces a novel model-driven methodology for the software development of real-time distributed vehicular embedded systems on single-and multi-core platforms. The proposed methodology discloses the opportunity of improving the cost-efficiency of the development process by providing automated support to identify viable design solutions with respect to selected non-functional requirements. To this end, it leverages the interplay of modeling languages for the vehicular domain whose integration is achieved by a suite of model transformations. An instantiation of the methodology is discussed for timing requirements, which are among the most critical ones for vehicular systems. To support the design of temporally correct systems, cooperation between EAST-ADL and the Rubus component model is opportunely built-up by means of model transformations, enabling timing-aware design and model-based timing analysis of the system. The applicability of the methodology is demonstrated as the proof of concepts on industrial use cases performed in cooperation with our industrial partners
Recommended from our members
Economic and productive risk analysis in livestock systems
Risk studies in agricultural companies recognize five main sources: institutional, personal, financial, productive and markets. The present work will be limited to studying the effects on the annual income of livestock systems from the last two sources. In a simplified approach, risk is considered to be obtaining an economic result that is insufficient to cover a critical amount for the normal performance and evolution of the system and the sustainability of the producing family. The questions that are intended to be answered are, given changing price and yield scenarios, what are the probabilities that the system does not guarantee a sufficient operating result to cover these values? How often does it “fall” below them? What is the intensity of the loss on each occasion? To answer these questions, two breeding systems located in “Cuña Boscosa” (Santa Fe province, Argentina) and in “Cuenca del Salado” (Buenos Aires province, Argentina) were analyzed. They were described in their structural components (number of production factors used and their valuation) and technological (management, health, food, marketing, etc.). Physical and economic results were estimated for a given current situation, in a deterministic analysis. For the stochastic analysis, the variables with the greatest power in the definition of results were identified, to which a probability distribution was assigned to represent their real variations. They were weaning (in percentage, triangular distribution, with parameters 46;53;64 for Santa Fe and 61;65;72 for Buenos Aires), calf weight (kg/head, triangular distribution, with parameters 170;180; 190 for Santa Fe and 160;170;180 for Buenos Aires) and its price (US 10,000.
The other four critical levels are of an economic nature (economic critical levels) and are being added for exploratory purposes. First, the probability that the system will not cover the depreciation of its capital assets (decapitalization); then remuneration for family work was added (decapitalization + family work). Subsequently, an amount was added to compensate the capital invested in improvements and exploitation (decapitalization + family work + interest). Finally, an amount was added to cover a positive rent to the land (decapitalization + family work + interest + land rent). The (real) rate used for these last two critical levels was 3%.
Two indicators were calculated for each critical level. First, the frequency with which the operating result is less than the critical level; This indicator was called the Risk Frequency Index (RFI) and was categorized as "low", "medium" and "high". The second dimension of risk is the magnitude of the loss, which represents how much is lost each time it is lost. This indicator was called Risk Intensity Index (RII); measures the average drop in income with respect to the critical level considered. Two qualitative categories are established: “low” and “high”. With both indicators, a double-entry matrix was built that allowed establishing the system's risk typology.
The results indicated that there are practically no differences from the location of the fields. The critical financial level (family consumption) did not figure as a risk possibility. Meanwhile, level 1 (decapitalization), manifested "low" risk for the establishment of Santa Fe and "no risk" for that of Buenos Aires; Both level 2 (decapitalization + family work) and level 3 (decapitalization + family work + interest on capital) showed medium risk and, finally, level 4 (decapitalization + family work + interest on capital + land income) showed risk "high".
The resulting conclusion is that the two systems are low risk, at least given the variations of the analyzed sources, prices and production. None presents negative results, which would imply situations of bankruptcy or debt generation, whether commercial, banking or fiscal, since the risk is measured from the operating result. The critical financial level, although it is the most subjective of all (it does not depend on the system itself, but on the family composition, the stage in which it is, tastes and preferences, among other factors), does not reported risk situations. The same situation occurred for the critical level “decapitalization”. When the remuneration of family work and the payment of interest are required, in addition to the decapitalization, the risk is medium, while there are high risk situations to cover the critical level that accumulates the payment of all factors. In the comparison with other studies carried out in previous cycles for livestock systems of the Argentinean northeast (NEA), these systems show a better performance, promoting the hypothesis -and the question- of what would happen in the event of lower livestock price scenarios than those of the analyzed cycle (2021/22)